<?php

class novedadesActions extends sfActions {
        /* envia los datos de la tabla  EVENTOS  paginados en en una cantidad determinada */
    public function executeIndex(sfWebRequest $request){

        $c = new Criteria();
        $c->addAscendingOrderByColumn(NovedadesPeer::ORDEN);

        // PA MAYOr EXPLICACION IR A   http://www.enmanosdenadie.com.ar/2009/06/symfony-paginacion-con-sfpropelpager/
        //sfPropelPayer('mensaje','cantidad de elemtos x pagina')
        $pager = new sfPropelPager('Novedades', sfConfig::get('app_max_per_page'));
        $pager->setCriteria($c);
        $pager->setPage($request->getParameter('page', 1));//setea la pagina en 1
        //preparala informacion para usarla en la vista
        $pager->init();
        $this->pager = $pager;
    }

    public function executeNew(sfWebRequest $request){

    }

    public function executeNew_save(sfWebRequest $request){
        $titulo = $request->getParameter('titulo');
        $resumen = $request->getParameter('resumen');
        $contenido = $request->getParameter('contenido');
        $orden=$request->getParameter('orden');
        $is_external = $request->getParameter('is_external', 0);//1 or empty
        $link = $request->getParameter('link');
       $imagen = $_FILES["imagen"]["tmp_name"];

         if($is_external!=''){ $is_external = 1; }

        $novedad = new  Novedades();
        $novedad->setTitulo($titulo);
        $novedad->setBrevedescrip($resumen);
        $novedad->setContenido($contenido);
        $novedad->setLink($link);
        $novedad->setIsExternal($is_external);
        $novedad->setOrden($orden);
        $novedad->save();
  
        if($imagen!=''){
            $DS = DIRECTORY_SEPARATOR;
            move_uploaded_file($imagen, sfConfig::get('sf_upload_dir').$DS."novedades".$DS.$novedad->getId().".jpg");
        }


        $this->getUser()->setFlash('msg','Novedad creado satisfactoriamente');
        $this->redirect('@novedades');
    }

    public function executeEdit(sfWebRequest $request){
        $id = $request->getParameter('id');
        $this->novedad = NovedadesPeer::retrieveByPK($id);
    }

    public function executeEdit_save(sfWebRequest $request){
        $id = $request->getParameter('id');
        $titulo = $request->getParameter('titulo');
        $resumen = $request->getParameter('resumen');
        $contenido = $request->getParameter('contenido');
        $orden=$request->getParameter('orden');
         $is_external = $request->getParameter('is_external', 0);//1 or empty
        $link = $request->getParameter('link');
       $imagen = $_FILES["imagen"]["tmp_name"];
        
          if($is_external!=''){ $is_external = 1; }


        $novedad =NovedadesPeer::retrieveByPK($id);
        $novedad->setTitulo($titulo);
        $novedad->setBrevedescrip($resumen);
        $novedad->setContenido($contenido);
        $novedad->setOrden($orden);
        $novedad->setLink($link);
        $novedad->setIsExternal($is_external);
        $novedad->save();

         if($imagen!=''){
            $DS = DIRECTORY_SEPARATOR;
            move_uploaded_file($imagen, sfConfig::get('sf_upload_dir').$DS."novedades".$DS.$novedad->getId().".jpg");
        }


        $this->getUser()->setFlash('msg','Novedad modificado satisfactoriamente');
        $this->redirect('@novedades');
    }

    public function executeDelete(sfWebRequest $request){
        $id = $request->getParameter('id');
        $event =NovedadesPeer::retrieveByPK($id);//busca x llave primaria , es lo mismo que hacer el doselectone
        $event->delete();

        $this->getUser()->setFlash('msg','Novedad eliminado satisfactoriamente');
        $this->redirect('@novedades');
    }

}